热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

沙恩说|解决ZabbixSender无法发送过长内容

DevOps中Zabbix与Jenkins结合的问题解决-ZabbixSende


蔡翔华(Shawn沙恩)

  • 招商银行信用卡中心技术经理

  • 国内首批ZCP,Zabbix中文手册官方译者。

  • 2018年Zabbix峰会演讲,主题《Zabbix 在 Fintech 环境中的实践》。

  • 2017年Zabbix峰会演讲,主题《Zabbix在企业中的落地以及最佳实践 》。

求:Zabbix Sender无法发送过长内容,怎么破?

解:在DevOps部署过程中,通过Jenkins调用Zabbix Sender将应用部署结果发送给Zabbix中的Item。同时,配置了一个触发器,当该Item有值时,将Item Value通过短信发送给部署管理员。


大致的逻辑如下:

Jenkins(通过Zabbix Sender发送构建结果) --> Zabbix Server --> Action(通过Trigger触发告警,通知管理员)


但是触发的短信有明显被截断的现象,于是开始对这个问题进行排查

01


首先,由于最先发送短信的平台是Jenkins,先确认Jenkins发送的短信内容是否完整。

确认后,发送的内容是完整的。

02


第二步,看一下接收方:Zabbix上Item的数据,发现数据的确有缺失。


基本定位到了问题,在于Zabbix接受数据产生了异常,由于其他监控没有出现异常,是个别问题,猜测是Item配置有问题,于是看下Item具体的配置。


看上去没什么问题,但是注意这个细节,此处选择的类型为Character,由于并不是无法收集数据,而是数据被截断了,所以怀疑是类型的长度限制。


03


最后,查看官方文档的描述,在数据库中,对于Character类型支持最多255个字符。


于是,将类型改为text,问题得到解决。

此处需要注意,由于类型变化,数据重新存储,历史数据不再显示。


解决思路


回顾这个问题解决的思路,可以归结为narrow down模型:

  1. 分解从Jenkins部署到收到短信的全链路环节和关系调用。

  2. 从头检查每个环节的输入、输出,是否有异常,定位具体哪个环节出现问题。

  3. 发现在Zabbix接受数据环节出现问题后,定位具体的细节,是网络有问题?还是Item配置,或者其他环节?

  4. 解决问题,fix it。


  Workshop 实践操作课  

沙恩老师讲解的具体问题是不是解决了你的疑问?欢迎来2020Zabbix峰会,专家手把手带你实操,精选主题,任你挑选!请带上你的电脑,准备好你的问题!









Zabbix 实践操作

延伸阅读

  • Zabbix专栏—沙恩说

  • 米宏—Zabbix5.0 快速安装部署教程!够快!

  • 伍昕—美国新能源科技公司Netco从零开始Zabbix的自动化之路

  • 何星—Zabbix自动注册功能实践在线课

  • 张世宏—当代张思德:做技术很孤独,没有弯道超车,但有捷径




推荐阅读
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 本文详细解析了 Android 系统启动过程中的核心文件 `init.c`,探讨了其在系统初始化阶段的关键作用。通过对 `init.c` 的源代码进行深入分析,揭示了其如何管理进程、解析配置文件以及执行系统启动脚本。此外,文章还介绍了 `init` 进程的生命周期及其与内核的交互方式,为开发者提供了深入了解 Android 启动机制的宝贵资料。 ... [详细]
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • 利用Jenkins与SonarQube集成实现高效代码质量检测与优化
    本文探讨了通过在 Jenkins 多分支流水线中集成 SonarQube,实现高效且自动化的代码质量检测与优化方法。该方案不仅提高了开发团队的代码审查效率,还确保了软件项目的持续高质量交付。 ... [详细]
  • 解决 Windows Server 2016 网络连接问题
    本文详细介绍了如何解决 Windows Server 2016 在使用无线网络 (WLAN) 和有线网络 (以太网) 时遇到的连接问题。包括添加必要的功能和安装正确的驱动程序。 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • 开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤
    开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤 ... [详细]
  • 在尝试对 QQmlPropertyMap 类进行测试驱动开发时,发现其派生类中无法正常调用槽函数或 Q_INVOKABLE 方法。这可能是由于 QQmlPropertyMap 的内部实现机制导致的,需要进一步研究以找到解决方案。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 在拉斯维加斯举行的Interop 2011大会上,Bitcurrent的Alistair Croll发表了一场主题为“如何以云计算的视角进行思考”的演讲。该演讲深入探讨了传统IT思维与云计算思维之间的差异,并提出了在云计算环境下应具备的新思维方式。Croll强调了灵活性、可扩展性和成本效益等关键要素,以及如何通过这些要素来优化企业IT架构和运营。 ... [详细]
author-avatar
手机用户2502931823
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有